Dependency 就是所謂的相依性
如下圖,由於這些天我們並沒有使用到所以不會有資料
所以首先讓我們寫點Code
Step1. 先建立一個Interface叫做ITestService
Step2. 建立一個TestService實作ITestService
Step3. 記得要在Startup註冊唷....這個很簡單筆者就不寫嚕
Step4. 調用它
Step5. 發行他
接著我們查詢看看...
dependencies
| limit 50
!!!為什麼查不到呢?Exception都查到了...
是不是因為Exception的關係,好那這樣我讓他不跑Excpetion!!
還是一樣為什麼??
明明request都查到了....
其實...Dependency這張表本來就不會自動寫入
這張是要利用TrackDependency來協助我們寫入的
謎之音:那....該怎麼寫呢?
其實很簡單!只要將下圖程式碼片段替換原先呼叫的方法就好了!
沒錯你沒看錯,搭配Exception更好用
var success = false;
var startTime = DateTime.UtcNow;
var timer = System.Diagnostics.Stopwatch.StartNew();
try
{
service.Test();
}
catch (Exception ex)
{
telemetryClient.TrackException(ex);
}
finally
{
timer.Stop();
telemetryClient.TrackDependency("DependencyType", "myDependency", "myCall", startTime, timer.Elapsed, success);
}
只需要這樣即可!接著再讓我們來查詢吧